/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package testsfonctions;

import java.io.*;
import java.util.ArrayList;
import java.util.List;
import javax.xml.parsers.*;
import org.w3c.dom.*;

/**
 *
 * @author OUWAIS
 */
public class ParserXML {
    private DocumentBuilderFactory factory;
    private DocumentBuilder builder;
    private Document doc;
    private Element nroot;
    int nbparcours;
    /**
    *
    * @param path path of XML file
    * @throws Exception
    */
    public void Parseur(String path) {
    //Chargement du document
    try{
    factory = DocumentBuilderFactory.newInstance();
    builder = factory.newDocumentBuilder();
    doc = builder.parse(new File("licence.xml"));
    this.nroot = doc.getDocumentElement();
    }
    catch(Exception e){
    e.printStackTrace();
    }
    }
    /**
    * retourne une liste contenant les id des balise
    **/
    public List getParcoursName(){
    // Parcour du document
    NodeList listeparcours = this.nroot.getElementsByTagName("parcours");
    List<String> lparcoursid = new ArrayList<String>();
    this.nbparcours=listeparcours.getLength();
    for(int i=0; i<this.nbparcours; i++){
    Element e = (Element)listeparcours.item(i);
    //System.out.println(e.getAttribute("name")+"\t"+e.getAttribute("id"));
    lparcoursid.add(e.getAttribute("id"));
    }
    return lparcoursid;
    }
    /**
    * This method must return a number of 'parcour'
    *
    * @return int
    */
    private int getNbparcours(){
    return this.nbparcours;
    }
}
